package com.ourteam.product.model.api;

import org.apache.commons.lang3.StringUtils;

import com.ourteam.frame.web.AbstractSearchModel;
import com.ourteam.product.model.dao.ProductModelServiceTemplateItemDAOQueryBean;
import com.ourteam.product.model.domain.ProductModelServiceTemplateBean;

public class ProductModelServiceTemplateItemSearchModel
		extends AbstractSearchModel<ProductModelServiceTemplateItemDAOQueryBean> {
	
	private String templateItemName;
	
	private long serviceTemplateId;

	public String getTemplateItemName() {
		return templateItemName;
	}

	public void setTemplateItemName(String templateItemName) {
		this.templateItemName = templateItemName;
	}

	public long getServiceTemplateId() {
		return serviceTemplateId;
	}

	public void setServiceTemplateId(long serviceTemplateId) {
		this.serviceTemplateId = serviceTemplateId;
	}

	@Override
	public String getMappedDAOField(String aProperty) {
		return ProductModelServiceTemplateBean.getMappedDAOField(aProperty);
	}

	@Override
	protected void doBuildQueryBean(ProductModelServiceTemplateItemDAOQueryBean queryBean) throws Exception {
		
		ProductModelServiceTemplateItemDAOQueryBean.Criteria criteria = queryBean.createCriteria();
		
		if(StringUtils.isNotBlank(templateItemName)){
			criteria.andTemplateItemNameLike(templateItemName);
		}
		
		if(this.serviceTemplateId != 0){
			criteria.andServiceTemplateIdEqualTo(serviceTemplateId);
		}
		
	}

}
